//laking count
//#include<iostream>
//#include<queue>
//using namespace std;
//int dx[] = { 0,0,1,-1,1,1,-1,-1 };
//int dy[] = { 1,-1,0,0,1,-1,-1,1 };
//typedef pair<int, int> PII;
//const int N = 110;
//char p[N][N];
//bool st[N][N];
//int n, m;
//queue<PII> q;
//void bfs(int i, int j)
//{
//	q.push({ i,j });
//	while (q.size())
//	{
//		auto t = q.front(); q.pop();
//		int x = t.first, y = t.second;
//		for (int k = 0; k < 8; k++)
//		{
//			int a = x + dx[k], b = y + dy[k];
//			if (a >= 1 && a <= n && b >= 1 && b <= m && st[a][b] == false && p[a][b] == 'W')
//			{
//				st[a][b] = true;
//				q.push({ a,b });
//			}
//		}
//	}
//}
//int main()
//{
//	cin >> n >> m;
//
//	for (int i = 1; i <= n; i++)
//	{
//		for (int j = 1; j <= m; j++)
//		{
//			char ch;cin >> ch;
//			p[i][j] = ch;
//		}
//	}
//	int ret = 0;
//	for (int i = 1; i <= n; i++)
//	{
//		for (int j = 1; j <= m; j++)
//		{
//			if (st[i][j] == false && p[i][j] == 'W')
//			{
//				bfs(i, j);
//				ret++;
//			}
//		}
//	}
//	cout << ret << endl;
//	return 0;
//}